#include "game.h"

void Initboard(char board[ROWS][COLS],int rows,int cols,int set)
{
	for(int i=0;i<rows;i++)
	{
		for(int j=0;j<cols;j++)
		{
			board[i][j]=set;
		}
	}
}//初始化扫雷

void Displayboard(char board[ROWS][COLS],int row,int col)
{
	printf("---------扫雷游戏---------\n");
	for(int j=0;j<=col;j++)
	{
		printf("%d ",j);
	}
	printf("\n");
	for(int i=1;i<=row;i++)
	{
		printf("%d ",i);
		for(int j=1;j<=col;j++)
		{
			printf("%c ",board[i][j]);
		}
		printf("\n");
	}
	printf("---------扫雷游戏---------\n");
}//打印扫雷

void Setmine(char board[ROWS][COLS],int row,int col)
{
	int x=0;
	int y=0;
	int count=Easy_count;
	while(count)
	{
		x=(rand()%row+1);//生成10个在row范围内的未知数x
		y=(rand()%col+1);//生成10个在row范围内的未知数y
		if(board[x][y]=='0')
		{	
			board[x][y]='1';
			count--;
		}
	}//设置10个雷
//	Displayboard(board,row,col);
}

void Findmine(char mine[ROWS][COLS],char show[ROWS][COLS],int row,int col)
{
	int x=0;
	int y=0;
	int sum=0;
	int win=row*col-Easy_count;//71
	while(win>0)
	{
		sum=0;
	//	Displayboard(mine,row,col);//检查雷的情况
		printf("请输入坐标->");
		scanf("%d %d",&x,&y);
		printf("\n");
		if(show[x][y]!='*')
		{
			printf("坐标已经输入过了,请重新输入\n");
		}
		else
		{
			if(x>0&&x<=row&&y>0&&y<=col)
			{
				if(mine[x][y]=='1')
				{
					printf("很遗憾，你被炸死了\n");	
					Displayboard(mine,row,col);
					break;
				}//是雷
				else //if(mine[x][y]=='0')
				{
					win--;
					for(int i=-1;i<=1;i++)
					{
						for(int j=-1;j<=1;j++)
							{
								sum=sum+(mine[x+i][y+j]-'0');
							}
					}
					show[x][y]=sum+'0';
				Displayboard(show,ROW,COL);//打印扫雷
				}//不是雷,也不是有的坐标
			}
			else
			{
				printf("输入错误，请重新输入\n");
			}
		}
	}		
	if(win==0)
	{
		printf("恭喜你胜利了\n");
	}
}//排查雷